home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-05 / src_1218.zip / FTPSERV.H < prev    next >
C/C++ Source or Header  |  1991-03-16  |  1KB  |  55 lines

  1. #ifndef    _FTPSERV_H
  2. #define    _FTPSERV_H
  3.  
  4. #include <stdio.h>
  5.  
  6. #ifndef _SOCKADDR_H
  7. #include "sockaddr.h"
  8. #endif
  9.  
  10. #define CTLZ    26        /* EOF for CP/M systems */
  11.  
  12. extern char *Userfile;    /* List of user names and permissions */
  13.  
  14. struct ftpserv {
  15.     int control;        /* Control socket */
  16.     int data;        /* Data socket */
  17.     char type;        /* Transfer type */
  18.     int logbsize;        /* Logical byte size for logical type */
  19.  
  20.     FILE *fp;        /* File descriptor being transferred */
  21.     struct sockaddr_in port;/* Remote port for data connection */
  22.     char *username;        /* Arg to USER command */
  23.     char *path;        /* Allowable path prefix */
  24.     char perms;        /* Permission flag bits */
  25.                 /* (See FILES.H for definitions) */
  26.     char *cd;        /* Current directory name */
  27. };
  28.  
  29. /* FTP commands */
  30. #define    USER_CMD    0
  31. #define    ACCT_CMD    1
  32. #define    PASS_CMD    2
  33. #define    TYPE_CMD    3
  34. #define    LIST_CMD    4
  35. #define    CWD_CMD        5
  36. #define    DELE_CMD    6
  37. #define    NAME_CMD    7
  38. #define    QUIT_CMD    8
  39. #define    RETR_CMD    9
  40. #define    STOR_CMD    10
  41. #define    PORT_CMD    11
  42. #define    NLST_CMD    12
  43. #define    PWD_CMD        13
  44. #define    XPWD_CMD    14
  45. #define    MKD_CMD        15
  46. #define    XMKD_CMD    16
  47. #define    XRMD_CMD    17
  48. #define    RMD_CMD        18
  49. #define    STRU_CMD    19
  50. #define    MODE_CMD    20
  51.  
  52. int permcheck __ARGS((char *path,int perms,int op,char *file));
  53.  
  54. #endif    /* _FTPSERV_H */
  55.